home *** CD-ROM | disk | FTP | other *** search
- // the implementation of class CKBANView - status bar
- // Copyright (C) 1997 Kazutaka Hirata <khirata@jove.acs.unt.edu>
-
- #include "../stdafx.h"
-
- #include <stdio.h>
-
- #include "../resource.h"
-
- #include "../kbanview.h"
-
- void CKBANView::OnUpdateIndicatorX(CCmdUI* pCmdUI)
- {
- if(m_moved) {
- KBAN_INFO& info = GetDocument()->kban_info();
- XY ac;
- info.grid().xy_pc2ac(m_pc_old, ac);
- char str[100];
- sprintf(str, "X: %4d.%03d", ac.x() / 1000, ac.x() % 1000);
- pCmdUI->Enable(TRUE);
- pCmdUI->SetText(str);
- }
- }
-
- void CKBANView::OnUpdateIndicatorY(CCmdUI* pCmdUI)
- {
- if(m_moved) {
- KBAN_INFO& info = GetDocument()->kban_info();
- XY ac;
- info.grid().xy_pc2ac(m_pc_old, ac);
- char str[100];
- sprintf(str, "Y: %4d.%03d", ac.y() / 1000, ac.y() % 1000);
- pCmdUI->Enable(TRUE);
- pCmdUI->SetText(str);
- }
- }
-
- void CKBANView::OnUpdateIndicatorLayer(CCmdUI* pCmdUI)
- {
- KBAN_INFO& info = GetDocument()->kban_info();
- const char* str;
- switch(info.active_layer().get()) {
- case LAYER_PATTERN_COMMON : str = "Layer: Pattern Common"; break;
- case LAYER_PATTERN_TOP : str = "Layer: Pattern Top"; break;
- case LAYER_PATTERN_BOTTOM : str = "Layer: Pattern Bottom"; break;
- case LAYER_SILK_TOP : str = "Layer: Silk Top"; break;
- case LAYER_SILK_BOTTOM : str = "Layer: Silk Top"; break;
- default : str = "Layer: Unknown"; break;
- }
- pCmdUI->Enable(TRUE);
- pCmdUI->SetText(str);
- }
-
- void CKBANView::OnUpdateIndicatorZoom(CCmdUI* pCmdUI)
- {
- KBAN_INFO& info = GetDocument()->kban_info();
- char str[100];
- sprintf(str, "Zoom: %2d", info.grid().zoom_get());
- pCmdUI->Enable(TRUE);
- pCmdUI->SetText(str);
- }
-
- void CKBANView::OnUpdateIndicatorGrid(CCmdUI* pCmdUI)
- {
- KBAN_INFO& info = GetDocument()->kban_info();
- GRID& grid = info.grid();
- uint main = grid.get_main_grid_width();
- uint sub = grid.get_sub_grid_width();
- uint div = main / sub;
- #if 1
- char str[100];
- sprintf(str, "Grid: %4d / %2d", main, div);
- #else
- switch(m_nGridID) {
- case ID_SETUP_GRID_10_1 : str = "Grid: 1000 / 1"; break;
- case ID_SETUP_GRID_10_2 : str = "Grid: 1000 / 2"; break;
- case ID_SETUP_GRID_10_5 : str = "Grid: 1000 / 5"; break;
- case ID_SETUP_GRID_10_A : str = "Grid: 1000 / 10"; break;
- case ID_SETUP_GRID_17_1 : str = "Grid: 1778 / 1"; break;
- case ID_SETUP_GRID_17_2 : str = "Grid: 1778 / 2"; break;
- case ID_SETUP_GRID_25_1 : str = "Grid: 2540 / 1"; break;
- case ID_SETUP_GRID_25_2 : str = "Grid: 2540 / 2"; break;
- case ID_SETUP_GRID_25_2 : str = "Grid: 2540 / 4"; break;
- case ID_SETUP_GRID_25_5 : str = "Grid: 2540 / 5"; break;
- case ID_SETUP_GRID_25_A : str = "Grid: 2540 / 10"; break;
- default : str = "Grid: Unknown" ; break;
- }
- #endif
- pCmdUI->Enable(TRUE);
- pCmdUI->SetText(str);
- }
-
- void CKBANView::OnUpdateIndicatorCommand(CCmdUI* pCmdUI)
- {
- char str[100];
- sprintf(str, "Command: %s", m_current_mmi->get_name());
- pCmdUI->Enable(TRUE);
- pCmdUI->SetText(str);
- }
-